// pages/aboutMe/haidaotuan/create.js
const app = getApp();
Page({

  /**
   * 页面的初始数据
   */
  data: {
    tabDatas: [
      {
        name: '骷髅头',
        type: 0
      },
      {
        name: '骷髅骨',
        type: 1
      },
      {
        name: '骷髅帽',
        type: 2
      },
      {
        name: '个性摆件',
        type: 3
      },
      {
        name: '背景',
        type: 4
      }
    ],
    activeTab: 0,
    imgDatas: [],
    clickNum: 0,
    lastTapTime: '',
    selectImg: [
      {
        tab: 0,
        url: '',
        activeImg: null
      },
      {
        tab: 1,
        url: '',
        activeImg: null
      },
      {
        tab: 2,
        url: '',
        activeImg: null
      },
      {
        tab: 3,
        url: '',
        activeImg: null
      },
      {
        tab: 4,
        url: '',
        activeImg: null
      },
    ],
    inputValue: '',
    createBg: '../../../images/logo.png',
    isEdit: false,
    firstImg: [],
    firstInput: ''
  },

  changeImg(item) {
    console.log(item, this.data.imgDatas)
    let me = this;
    let selectImg =[...me.data.selectImg]
    selectImg.forEach(el => {
      if (el.tab === me.data.activeTab) {
        el.url = item.currentTarget.dataset.img.url
        el.activeImg = item.currentTarget.dataset.img.url
      }
    })
    me.setData({
      selectImg: selectImg
    })
  },

  changeTab(item) {
    console.log(item)
    this.setData({
      activeTab: item.currentTarget.dataset.item.type
    })
    const _this = this
    wx.request({
      url: 'https://forestart.top/api/book/material/list', // 接口地址
      method: 'GET', // 请求方法
      data: {
        type: item.currentTarget.dataset.item.type
      },
      header: {
      'content-type': 'application/json' // 默认值
      },
      success(res) {
        console.log(res.data); // 请求成功后的回调函数
        let list = res.data.result?.[0]
        _this.setData({
          imgDatas: list.files?.map(el => {
            return {
              type: list.type,
              url: el
            }
          })
        })
      },
      fail() {
        console.error('请求失败'); // 请求失败后的回调函数
      }
    });
  },

  resetImg () {
    this.setData({
      inputValue: this.data.firstInput,
      selectImg: JSON.parse(this.data.firstImg)
    })
  },

  createImg () {
    console.log(this.data.inputValue)
    console.log(this.data.selectImg)
    let flag = true
    if (!this.data.inputValue) {
      wx.showToast({
        title: '请输入大船团名称',
        icon: 'none',
        duration: 2000
      })
      flag = false
    }
    if (!flag) return false
    wx.showLoading({
      title: '加载中', // 提示的内容
      mask: true // 是否显示透明蒙层，防止触摸穿透
    });
    wx.request({
      url: 'https://forestart.top/api/book/material/createBigShip', 
      method: 'POST',
      data: {
        name : this.data.inputValue,
        creator : app.globalData.userInfo.id, //创建人Id，当前登录用户的Id
        pirateSkull: this.data.selectImg[0].url, //骷髅头
        pirateBone: this.data.selectImg[1].url, //骷髅骨
        pirateHat: this.data.selectImg[2].url, //骷髅帽 
        pirateOrnament: this.data.selectImg[3].url, //个性摆件
        pirateBg: this.data.selectImg[4].url //背景
      },
      success(res) {
        wx.showToast({
          title: '创建成功',
          icon: 'none',
          duration: 2000
        })
        wx.hideLoading();
        wx.navigateTo({
          url: `/pages/aboutMe/bigList/list`
        })
      },
      fail() {
        wx.showToast({
          title: '获取用户信息失败',
          icon: 'none',
          duration: 2000
        })
      }
    })
  },

  updateImg() {
    console.log(this.data.inputValue)
    console.log(this.data.selectImg)
    let flag = true
    if (!this.data.inputValue) {
      wx.showToast({
        title: '请输入大船团名称',
        icon: 'none',
        duration: 2000
      })
      flag = false
    }
    if (!flag) return false
    wx.showLoading({
      title: '加载中', // 提示的内容
      mask: true // 是否显示透明蒙层，防止触摸穿透
    });
    wx.request({
      url: 'https://forestart.top/api/book/material/updateBigShip', 
      method: 'POST',
      data: {
        name : this.data.inputValue,
        creator : app.globalData.userInfo.id, //创建人Id，当前登录用户的Id
        pirateSkull: this.data.selectImg[0].url, //骷髅头
        pirateBone: this.data.selectImg[1].url, //骷髅骨
        pirateHat: this.data.selectImg[2].url, //骷髅帽 
        pirateOrnament: this.data.selectImg[3].url, //个性摆件
        pirateBg: this.data.selectImg[4].url //背景
      },
      success(res) {
        wx.showToast({
          title: '修改成功',
          icon: 'none',
          duration: 2000
        })
        wx.hideLoading();
        wx.navigateTo({
          url: `/pages/aboutMe/bigList/list`
        })
      },
      fail() {
        wx.showToast({
          title: '获取用户信息失败',
          icon: 'none',
          duration: 2000
        })
      }
    })
  },

  /**
   * 生命周期函数--监听页面加载
   */
  onLoad(options) {
    const _this = this
    let arr = [0,1,2,3,4]
    wx.request({
      url: 'https://forestart.top/api/book/material/list', // 接口地址
      method: 'GET', // 请求方法
      data: {
        type: 0
      },
      header: {
      'content-type': 'application/json' // 默认值
      },
      success(res) {
        console.log(res.data); // 请求成功后的回调函数
        let list = res.data.result?.[0]
        _this.setData({
          imgDatas: list.files?.map(el => {
            return {
              type: list.type,
              url: el
            }
          })
        })
      },
      fail() {
        console.error('请求失败'); // 请求失败后的回调函数
      }
    });
  },

  /**
   * 生命周期函数--监听页面初次渲染完成
   */
  onReady() {

  },

  /**
   * 生命周期函数--监听页面显示
   */
  onShow() {
    console.log(app.globalData)
    console.log(getCurrentPages())
    let pages = getCurrentPages()
    let current = pages[pages.length - 1]
    let detail = JSON.parse(current.options.query)
    console.log(detail)
    let selectImg = [
      {
        tab: 0,
        url: detail.pirateSkull,
        activeImg: detail.pirateSkull
      },
      {
        tab: 1,
        url: detail.pirateBone,
        activeImg: detail.pirateBone
      },
      {
        tab: 2,
        url: detail.pirateHat,
        activeImg: detail.pirateHat
      },
      {
        tab: 3,
        url: detail.pirateOrnament,
        activeImg: detail.pirateOrnament
      },
      {
        tab: 4,
        url: detail.pirateBg,
        activeImg: detail.pirateBg
      },
    ]
    if (detail) {
      this.setData({
        inputValue: detail.name,
        firstInput: detail.name,
        selectImg: selectImg,
        firstImg: JSON.stringify(selectImg),
        isEdit: true
      })
      wx.setNavigationBarTitle({
        title: '修改大船团'
      })
    } else {
      this.setData({
        firstImg: [
          {
            tab: 0,
            url: '',
            activeImg: null
          },
          {
            tab: 1,
            url: '',
            activeImg: null
          },
          {
            tab: 2,
            url: '',
            activeImg: null
          },
          {
            tab: 3,
            url: '',
            activeImg: null
          },
          {
            tab: 4,
            url: '',
            activeImg: null
          },
        ],
        isEdit: false,
        firstInput: '',
      })
      wx.setNavigationBarTitle({
        title: '创建大船团'
      })
    }
  },

  /**
   * 生命周期函数--监听页面隐藏
   */
  onHide() {

  },

  /**
   * 生命周期函数--监听页面卸载
   */
  onUnload() {

  },

  /**
   * 页面相关事件处理函数--监听用户下拉动作
   */
  onPullDownRefresh() {

  },

  /**
   * 页面上拉触底事件的处理函数
   */
  onReachBottom() {

  },

  /**
   * 用户点击右上角分享
   */
  onShareAppMessage() {

  }
})